﻿'  __ _                 
' / _| |                
'| |_| |_   _ _ __ _ __ 
'|  _| | | | | '__| '__|
'| | | | |_| | |  | |   
'|_| |_|\__,_|_|  |_|

'Copyright (C) 2012, Rafal Marek Chmiel
'All rights reserved. http://flurr.codeplex.com/

'Copyright (C) 2010, Stephen Perelson (WinTumblr)
'All rights reserved. http://www.feedfeast.com/wintumblr/

' Redistribution and use in source and binary forms, with or without modification, are 
' permitted provided that the following conditions are met:
'
' - Redistributions of source code must retain the above copyright notice, this list 
'   of conditions and the following disclaimer.
' - Redistributions in binary form must reproduce the above copyright notice, this list 
'   of conditions and the following disclaimer in the documentation and/or other 
'   materials provided with the distribution.
'
' THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
' ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
' WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
' IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
' INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
' NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
' PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
' WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
' ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
' POSSIBILITY OF SUCH DAMAGE.

Imports System.Collections.Generic
Imports System.Text
Imports System.Web
Imports System.Net
Imports System.IO

Public Class tumblrAccount

    Private strEmail As String = ""
    Private strPassword As String = ""
    Private strGroup As String = ""
    Private booPrivate As Boolean = False
    Private strState As String = "" 'The state of the post. Specify one of the following:  published, draft, queue (string, N)
    Private strTweet As String = "" 'Manages the autotweet (if enabled) for this post: set to off for no tweet, or enter text to override the default tweet (string, N)
    Private booMarkdown As Boolean = False 'Indicates whether the post uses markdown syntax (boolean, N)
    Private strDate As String = "" 'The GMT date and time of the post (string, N)
    Private strTags As String = "" 'Comma-separated tags for this post (string, N)

    Public Property email() As String
        Get
            Return strEmail
        End Get
        Set(ByVal value As String)
            strEmail = value
        End Set
    End Property

    Public Property password() As String
        Get
            Return strPassword
        End Get
        Set(ByVal value As String)
            strPassword = value
        End Set
    End Property

    Public Property group() As String
        Get
            Return strGroup
        End Get
        Set(ByVal value As String)
            strGroup = value
        End Set
    End Property

    Public Property isPrivate() As Boolean
        Get
            Return booPrivate
        End Get
        Set(ByVal value As Boolean)
            booPrivate = value
        End Set
    End Property

    Public Property state() As String
        Get
            Return strState
        End Get
        Set(ByVal value As String)
            strState = value
        End Set
    End Property

    Public Property tweet() As String
        Get
            Return strTweet
        End Get
        Set(ByVal value As String)
            strTweet = value
        End Set
    End Property

    Private Property markdown() As Boolean
        Get
            Return booMarkdown
        End Get
        Set(ByVal value As Boolean)
            booMarkdown = value
        End Set
    End Property

    Public Property dateOfPost() As DateTime
        Get
            Return Convert.ToDateTime(strDate)
        End Get
        Set(ByVal value As DateTime)
            If value > DateTime.Now Then
                strDate = ""
            Else
                strDate = value.ToString("yyyy-MM-dd HH:mm:ss")
            End If
        End Set
    End Property

    Public Property strDateOfPost() As String
        Get
            Return strDate
        End Get
        Set(ByVal value As String)
            strDate = value
        End Set
    End Property

    Public Property tags() As String
        Get
            Return strTags
        End Get
        Set(ByVal value As String)
            strTags = value
        End Set
    End Property

End Class